﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using Entity;
using System.Windows.Forms;

namespace DataAccess
{
    public class SuppliersDataAccess
    {
        Config con = new Config();
        //hàm đổ dữ liệu lên bảng
        public DataTable Suppliers()
        {
            return con.getDatatable("SP_SelectSuppliers");
        }
        //hàm insert
        public int Insert(Suppliers sup)
        {
            string sql = "SP_InsertSuppliers";
            int so_luong = 11; //trong bảng cần thao tác có bao nhiêu trường thì so_luong bằng bấy nhiêu table=11 thì so_luong=11
            string[] name = new string[so_luong];
            object[] value = new object[so_luong];
            name[0] = "@CompanyName" ; value[0] = sup.CompanyName1;
            name[1] = "@ContactName" ; value[1] = sup.ContactName1;
            name[2] = "@ContactTitle" ; value[2] = sup.ContactTitle1;
            name[3] = "@Address" ; value[3] = sup.Address1;
            name[4] = "@City" ; value[4] = sup.City1;
            name[5] = "@Region" ; value[5] = sup.Region1;
            name[6] = "@PostalCode" ; value[6] = sup.PostalCode1;
            name[7] = "@Country" ; value[7] = sup.Country1;
            name[8] = "@Phone" ; value[8] = sup.Phone1;
            name[9] = "@Fax" ; value[9] = sup.Fax1;
            name[10] = "@HomePage" ; value[10] = sup.HomePage1;
            return con.Execute(sql, name, value, so_luong);
        }

        //hàm update
        public int Update(Suppliers sup)
        {
            string sql = "SP_UpdateSuppliers";
            int so_luong = 12; //trong bảng cần thao tác có bao nhiêu trường thì so_luong bằng bấy nhiêu table=11 thì so_luong=12
            string[] name = new string[so_luong];
            object[] value = new object[so_luong];
            name[0] = "@SupplierID"; value[0] = sup.Id1;
            name[1] = "@CompanyName"; value[1] = sup.CompanyName1;
            name[2] = "@ContactName"; value[2] = sup.ContactName1;
            name[3] = "@ContactTitle"; value[3] = sup.ContactTitle1;
            name[4] = "@Address"; value[4] = sup.Address1;
            name[5] = "@City"; value[5] = sup.City1;
            name[6] = "@Region"; value[6] = sup.Region1;
            name[7] = "@PostalCode"; value[7] = sup.PostalCode1;
            name[8] = "@Country"; value[8] = sup.Country1;
            name[9] = "@Phone"; value[9] = sup.Phone1;
            name[10] = "@Fax"; value[10] = sup.Fax1;
            name[11] = "@HomePage"; value[11] = sup.HomePage1;

            return con.Execute(sql, name, value, so_luong);
        }

        //hàm delete
        //hàm này chỉ cần piết lấy id để xoá
        public int Delete(int id)
        {
            int so_luong = 1;
            string sql = "SP_DeleteSuppliers";
            string[] name = new string[so_luong];
            object[] value = new object[so_luong];

            name[0] = "@id"; value[0] = id;

            return con.Execute(sql, name, value, so_luong);
        }
    }
}
